翻訳と辞書
Words near each other
・ Hearitfirst.com
・ Hearken Unto Me Ye Holy Children (Maurice Greene)
・ Hearn
・ Hearn and Rawlins Mill
・ Hearn Generating Station
・ Hearn Potato House
・ Hearn Stage at The Kress Theatre
・ Hearne family
・ Hearne Independent School District
・ Hearne Municipal Airport
・ Hearne v Stowell
・ Hearne, Saskatchewan
・ Hearne, Texas
・ Heap Island
・ Heap leaching
Heap overflow
・ Heap pollution
・ Heap spraying
・ Heap Steep Glacier
・ Heap's algorithm
・ Heap's Rice Mill
・ Heap, Bury
・ Heapey
・ Heapey railway station
・ Heapham
・ Heaphy
・ Heaphy River
・ Heaphy Spur
・ Heaphy Tin Man
・ Heaphy Track


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Heap overflow : ウィキペディア英語版
Heap overflow

A heap overflow is a type of buffer overflow that occurs in the heap data area. Heap overflows are exploitable in a different manner to that of stack-based overflows. Memory on the heap is dynamically allocated by the application at run-time and typically contains program data. Exploitation is performed by corrupting this data in specific ways to cause the application to overwrite internal structures such as linked list pointers. The canonical heap overflow technique overwrites dynamic memory allocation linkage (such as malloc meta data) and uses the resulting pointer exchange to overwrite a program function pointer.
A typical example on older versions of Linux is two buffers allocated next to each other on the heap, writing beyond the boundary of the first buffer allows overwriting meta data in the second buffer. By setting the in-use bit to zero of the second buffer and setting the length to a small negative value which allows null bytes to be copied, when the program calls free() on the first buffer it will attempt to merge these two buffers into a single buffer. When this happens, the buffer that is assumed to be freed will be expected to hold two pointers FD and BK in the first 8 bytes of the formerly allocated buffer. BK gets written into FD and can be used to overwrite a pointer.
==Consequences==

An accidental overflow may result in data corruption or unexpected behavior by any process which uses the affected memory area. On operating systems without memory protection, this could be any process on the system.
A deliberate exploit may result in data at a specific location being altered in an arbitrary way, or in arbitrary code being executed.
The Microsoft JPEG GDI+ vulnerability (MS04-028 ) is an example of the danger a heap overflow can represent to a computer user.
iOS jailbreaking often uses heap overflows to gain arbitrary code execution, usually for kernel exploits to achieve the ability to replace the kernel with the one jailbreak provides.

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Heap overflow」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.